<!DOCTYPE html>
<html lang="zh-CN">

<head>
  <meta charset="UTF-8" />
  <meta name="author" content="wangbo" />
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>数组</title>
</head>

<body>
  <script>

    // 总结了四种方式：
    // var arr = new Array()  //new 可以省略
    // var arr = new Array(item, item, item);   //定义时即初始化
    // var arr = new Array(length)    //定义指定长度的数组
    // var arr = []    //字面量

    // 补充：
    var arr1 = [1, , 2];   // 1,undefined,2
    var arr2 = [, ,];   // undefined*2   (第二个逗号右边部分会被忽略掉，存在兼容性问题，不推荐使用）
    var arr3 = new Array(100);  // undefined*100  (表示创建一个数组，数组有100个空元素，长度为100)

    // 字面量
    let myarr = [10, 20, 30];
    console.log(myarr)
    // 可以不连续
    let myarr5 = [];
    myarr5[0] = 10
    myarr5[2] = 10
    console.log(myarr5)
    // 创建对象,可以不连续
    let myarr6 = new Array()
    myarr6[0] = 20;
    myarr6[1] = 20;
    myarr6[3] = 20;
    console.log(myarr6)
    let myarr2 = new Array(3)
    myarr2[0] = 30;
    myarr2[1] = 20;
    myarr2[2] = 10;
    // 超过长度无效
    myarr6[3] = 20;
    console.log(myarr2)
    // 可以添加新的
    let myarr3 = new Array(10,20,30)
    myarr3[3] = 20;
    console.log(myarr3)
  </script>
</body>

</html>